package com.ruoyi.sbgl.sbxxgl.domain;

import java.util.List;
import java.util.Date;
import java.util.stream.Collectors;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.sbgl.cjxxgl.domain.Cjxxgl;
import com.ruoyi.sbgl.cjxxgl.service.ICjxxglService;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

import javax.annotation.PostConstruct;
import javax.annotation.Resource;

/**
 * 设备信息管理对象 sbgl_sbxxgl
 *
 * @author huacai
 * @date 2024-09-09
 */
public class Sbxxgl extends BaseEntity
{
    @Resource
    private ICjxxglService cjxxglService;
    private static final long serialVersionUID = 1L;

    /** 设备ID */
    private String sbxxglId;

    /** ID是否存在 */
//    @Excel(name = "ID是否存在")
    private String idWhere;

    /** 设备名称 */
    @Excel(name = "设备名称")
    private String sbName;

    /** 出厂编号 */
    @Excel(name = "出厂编号")
    private String ccBh;

    /** 自编号 */
    @Excel(name = "自编号")
    private String zbh;

    /** 固定资产编号 */
    @Excel(name = "固定资产编号")
    private String gdZcBh;

    /** 校准周期 */
    @Excel(name = "校准周期")
    private String jzZq;

    /** 规格型号 */
    @Excel(name = "规格型号")
    private String ggXh;

    /** 准确度/不准确度 */
    @Excel(name = "准确度/不准确度")
    private String zqdBzqd;

    /** 所在项目 */
    @Excel(name = "所在项目", type = Excel.Type.IMPORT, comboKey = "xmList", prompt = "所在项目")
    private String szXm;

    /** 单位 */
    @Excel(name = "单位", dictType = "sbgl_sbdw", comboReadDict = true)
    private String dw;

    /** 生产厂家 */
//    @Excel(name = "生产厂家", type = Excel.Type.IMPORT, comboKey = "comList", prompt = "厂家")
    @Excel(name = "生产厂家")
    private String scCj;

    /** 设备类型 */
    @Excel(name = "设备类型", dictType = "sbgl_sblx", comboReadDict = true)
    private String sbLx;

    /** 测量范围 */
    @Excel(name = "测量范围")
    private String clFw;

    /** 有效期至 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "有效期至", width = 30, dateFormat = "yyyy-MM-dd")
    private Date yxqZ;

    /** 购置日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "购置日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date gzRq;

    /** 设备备注 */
    @Excel(name = "设备备注")
    private String sbBz;

    /** 设备状态 */
    @Excel(name = "设备状态")
    private String sbZt;

    /** 用户ID */
    private Integer userId;

    /** 部门ID */
    private Integer deptId;

    /** 设备信息管理附件信息 */
    private List<SbxxglFj> sbxxglFjList;

    public void setSbxxglId(String sbxxglId)
    {
        this.sbxxglId = sbxxglId;
    }

    public String getSbxxglId()
    {
        return sbxxglId;
    }
    public void setIdWhere(String idWhere)
    {
        this.idWhere = idWhere;
    }

    public String getIdWhere()
    {
        return idWhere;
    }
    public void setSbName(String sbName)
    {
        this.sbName = sbName;
    }

    public String getSbName()
    {
        return sbName;
    }
    public void setCcBh(String ccBh)
    {
        this.ccBh = ccBh;
    }

    public String getCcBh()
    {
        return ccBh;
    }
    public void setZbh(String zbh)
    {
        this.zbh = zbh;
    }

    public String getZbh()
    {
        return zbh;
    }
    public void setJzZq(String jzZq)
    {
        this.jzZq = jzZq;
    }

    public void setGdZcBh(String gdZcBh)
    {
        this.gdZcBh = gdZcBh;
    }

    public String getGdZcBh()
    {
        return gdZcBh;
    }

    public String getJzZq()
    {
        return jzZq;
    }
    public void setGgXh(String ggXh)
    {
        this.ggXh = ggXh;
    }

    public String getGgXh()
    {
        return ggXh;
    }
    public void setZqdBzqd(String zqdBzqd)
    {
        this.zqdBzqd = zqdBzqd;
    }

    public String getZqdBzqd()
    {
        return zqdBzqd;
    }
    public void setSzXm(String szXm)
    {
        this.szXm = szXm;
    }

    public String getSzXm()
    {
        return szXm;
    }
    public void setDw(String dw)
    {
        this.dw = dw;
    }

    public String getDw()
    {
        return dw;
    }
    public void setScCj(String scCj)
    {
        this.scCj = scCj;
    }

    public String getScCj()
    {
        return scCj;
    }
    public void setSbLx(String sbLx)
    {
        this.sbLx = sbLx;
    }

    public String getSbLx()
    {
        return sbLx;
    }
    public void setClFw(String clFw)
    {
        this.clFw = clFw;
    }

    public String getClFw()
    {
        return clFw;
    }
    public void setYxqZ(Date yxqZ)
    {
        this.yxqZ = yxqZ;
    }

    public Date getYxqZ()
    {
        return yxqZ;
    }
    public void setGzRq(Date gzRq)
    {
        this.gzRq = gzRq;
    }

    public Date getGzRq()
    {
        return gzRq;
    }
    public void setSbBz(String sbBz)
    {
        this.sbBz = sbBz;
    }

    public String getSbBz()
    {
        return sbBz;
    }

    public ICjxxglService getCjxxglService() {
        return cjxxglService;
    }

    public void setCjxxglService(ICjxxglService cjxxglService) {
        this.cjxxglService = cjxxglService;
    }

    public String getSbZt() {
        return sbZt;
    }

    public void setSbZt(String sbZt) {
        this.sbZt = sbZt;
    }

    public void setUserId(Integer userId)
    {
        this.userId = userId;
    }

    public Integer getUserId()
    {
        return userId;
    }
    public void setDeptId(Integer deptId)
    {
        this.deptId = deptId;
    }

    public Integer getDeptId()
    {
        return deptId;
    }

    public List<SbxxglFj> getSbxxglFjList()
    {
        return sbxxglFjList;
    }

    public void setSbxxglFjList(List<SbxxglFj> sbxxglFjList)
    {
        this.sbxxglFjList = sbxxglFjList;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
                .append("sbxxglId", getSbxxglId())
                .append("idWhere", getIdWhere())
                .append("sbName", getSbName())
                .append("ccBh", getCcBh())
                .append("zbh", getZbh())
                .append("gdZcBh", getGdZcBh())
                .append("jzZq", getJzZq())
                .append("ggXh", getGgXh())
                .append("zqdBzqd", getZqdBzqd())
                .append("szXm", getSzXm())
                .append("dw", getDw())
                .append("scCj", getScCj())
                .append("sbLx", getSbLx())
                .append("clFw", getClFw())
                .append("yxqZ", getYxqZ())
                .append("gzRq", getGzRq())
                .append("sbBz", getSbBz())
                .append("sbZt", getSbZt())
                .append("createBy", getCreateBy())
                .append("createTime", getCreateTime())
                .append("updateBy", getUpdateBy())
                .append("updateTime", getUpdateTime())
                .append("userId", getUserId())
                .append("deptId", getDeptId())
                .append("sbxxglFjList", getSbxxglFjList())
                .toString();
    }
}
